<?php
/**
 * 人事管理模块路由配置
 * 路由规范化完成标记 - 已按照ROUTE_STANDARDIZATION_PLAN.md统一为/api前缀路由
 */

use think\facade\Route;

// 奖罚项目相关路由
Route::group('api/user/rewardscate', function () {
    Route::get('/list', 'user.Basic/list');             // 查看常规数据列表
    Route::get('/view', 'user.Basic/view');             // 查看单个常规数据
    Route::get('/set', 'user.Basic/set');               // 设置常规数据（获取数据列表）
    Route::post('/add', 'user.Basic/add');              // 新建常规数据
    Route::put('/edit', 'user.Basic/edit');             // 编辑常规数据
    Route::delete('/del', 'user.Basic/del');            // 删除常规数据
});

// 常规数据相关路由
Route::group('api/user/basic', function () {
    Route::get('/list', 'user.Basic/list');             // 查看常规数据列表
    Route::get('/view', 'user.Basic/view');             // 查看单个常规数据
    Route::get('/set', 'user.Basic/set');               // 设置常规数据（获取数据列表）
    Route::post('/add', 'user.Basic/add');              // 新建常规数据
    Route::put('/edit', 'user.Basic/edit');             // 编辑常规数据
    Route::delete('/del', 'user.Basic/del');            // 删除常规数据
});

// 部门相关路由
Route::group('api/user/department', function () {
    Route::get('/list', 'user.Department/index');       // 获取部门列表
    Route::get('/view', 'user.Department/show');        // 查看单个部门
    Route::get('/options', 'user.Department/options');  // 获取部门选项（用于下拉选择）
    Route::get('/active-list', 'user.Department/activeList'); // 获取启用的部门列表（用于下拉选择）
    Route::post('/add', 'user.Department/store');       // 新建部门
    Route::put('/edit', 'user.Department/update');      // 编辑部门
    Route::delete('/del', 'user.Department/destroy');   // 删除部门
});

// 岗位职称相关路由
Route::group('api/user/position', function () {
    Route::get('/list', 'user.Position/index');         // 查看岗位职称列表
    Route::get('/view', 'user.Position/show');          // 查看单个岗位
    Route::get('/options', 'user.Position/options');    // 获取岗位选项（用于下拉选择）
    Route::post('/add', 'user.Position/store');         // 新建岗位职称
    Route::put('/edit', 'user.Position/update');        // 编辑岗位职称
    Route::delete('/del', 'user.Position/destroy');     // 删除岗位职称
});

// 员工相关路由
Route::group('api/user/user', function () {
    Route::get('/index', 'user.User/index');            // 查看员工信息列表
    Route::get('/list', 'user.User/index');             // 查看员工信息列表（兼容）
    Route::get('/view', 'user.User/view');              // 查看单个员工信息
    Route::post('/add', 'user.User/add');               // 新建员工信息
    Route::put('/edit', 'user.User/edit');              // 编辑员工信息
    Route::delete('/del', 'user.User/del');             // 删除员工信息
    Route::post('/import', 'user.User/import');         // 导入员工信息
    Route::post('/export', 'user.User/export');         // 导出员工信息
    Route::get('/search', 'user.User/search');          // 搜索员工信息
    Route::post('/setstatus', 'user.User/setStatus');   // 设置员工状态
    Route::post('/upload', 'user.User/upload');         // 上传员工照片
    Route::get('/info', 'user.User/getUserInfo');       // 获取当前登录用户信息
    Route::get('/options', 'user.User/getUserOptions'); // 获取用户选项（用于下拉选择）
    Route::get('/admin_list', 'user.User/getAdminList'); // 获取管理员列表
    Route::post('/saveUser', 'user.User/saveUser');     // 保存员工信息
    Route::post('/change_password', 'user.User/changePassword'); // 修改密码
    Route::get('/test/search', 'user.Test/search');     // 测试搜索功能
});

// 员工档案相关路由
Route::group('api/user/archives', function () {
    Route::get('/list', 'user.Archives/list');             // 查看员工档案列表
    Route::get('/view', 'user.Archives/view');             // 查看单个员工档案
    Route::post('/add', 'user.Archives/add');              // 新建员工档案
    Route::put('/edit', 'user.Archives/edit');             // 编辑员工档案
    Route::delete('/del', 'user.Archives/del');            // 删除员工档案
});

// 员工调动相关路由
Route::group('api/user/transfer', function () {
    Route::get('/list', 'user.Transfer/list');          // 查看员工调动列表
    Route::get('/view', 'user.Transfer/view');          // 查看单个员工调动
    Route::post('/add', 'user.Transfer/add');           // 新建员工调动
    Route::put('/edit', 'user.Transfer/edit');          // 编辑员工调动
    Route::delete('/del', 'user.Transfer/del');         // 删除员工调动
});

// 员工培训相关路由
Route::group('api/user/training', function () {
    Route::get('/list', 'user.Training/list');          // 查看员工培训列表
    Route::get('/view', 'user.Training/view');          // 查看单个员工培训
    Route::post('/add', 'user.Training/add');           // 新建员工培训
    Route::put('/edit', 'user.Training/edit');          // 编辑员工培训
    Route::delete('/del', 'user.Training/del');         // 删除员工培训
});

// 员工合同相关路由
Route::group('api/user/contract', function () {
    Route::get('/list', 'user.Contract/list');          // 查看员工合同列表
    Route::get('/view', 'user.Contract/view');          // 查看单个员工合同
    Route::post('/add', 'user.Contract/add');           // 新建员工合同
    Route::put('/edit', 'user.Contract/edit');          // 编辑员工合同
    Route::delete('/del', 'user.Contract/del');         // 删除员工合同
});

// 员工离职相关路由
Route::group('api/user/dimission', function () {
    Route::get('/list', 'user.Personal/leave_list');    // 查看员工离职列表
    Route::get('/view', 'user.Personal/leave_view');    // 查看单个员工离职
    Route::post('/add', 'user.Personal/leave_add');     // 新建员工离职
    Route::put('/edit', 'user.Personal/leave_edit');    // 编辑员工离职
    Route::delete('/del', 'user.Personal/leave_delete'); // 删除员工离职
});

// 员工转正相关路由
Route::group('api/user/regular', function () {
    Route::get('/list', 'user.Regular/list');           // 查看员工转正列表
    Route::get('/view', 'user.Regular/view');           // 查看单个员工转正
    Route::post('/add', 'user.Regular/add');            // 新建员工转正
    Route::put('/edit', 'user.Regular/edit');           // 编辑员工转正
    Route::delete('/del', 'user.Regular/del');          // 删除员工转正
});

// 员工异动相关路由
Route::group('api/user/change', function () {
    Route::get('/list', 'user.Change/list');            // 查看员工异动列表
    Route::get('/view', 'user.Change/view');            // 查看单个员工异动
    Route::post('/add', 'user.Change/add');             // 新建员工异动
    Route::put('/edit', 'user.Change/edit');            // 编辑员工异动
    Route::delete('/del', 'user.Change/del');           // 删除员工异动
});

// 考勤相关路由
Route::group('api/user/attendance', function () {
    Route::get('/list', 'user.Attendance/list');        // 查看考勤列表
    Route::get('/view', 'user.Attendance/view');        // 查看单个考勤
    Route::post('/add', 'user.Attendance/add');         // 新建考勤
    Route::put('/edit', 'user.Attendance/edit');        // 编辑考勤
    Route::delete('/del', 'user.Attendance/del');       // 删除考勤
    Route::post('/import', 'user.Attendance/import');   // 导入考勤
    Route::post('/export', 'user.Attendance/export');   // 导出考勤
    Route::get('/statistics', 'user.Attendance/statistics'); // 考勤统计
});

// 考勤规则相关路由
Route::group('api/user/attendance_rule', function () {
    Route::get('/list', 'user.AttendanceRule/list');    // 查看考勤规则列表
    Route::get('/view', 'user.AttendanceRule/view');    // 查看单个考勤规则
    Route::post('/add', 'user.AttendanceRule/add');     // 新建考勤规则
    Route::put('/edit', 'user.AttendanceRule/edit');    // 编辑考勤规则
    Route::delete('/del', 'user.AttendanceRule/del');   // 删除考勤规则
});

// 考勤记录相关路由
Route::group('api/user/attendance_record', function () {
    Route::get('/list', 'user.AttendanceRecord/list');  // 查看考勤记录列表
    Route::get('/view', 'user.AttendanceRecord/view');  // 查看单个考勤记录
    Route::post('/add', 'user.AttendanceRecord/add');   // 新建考勤记录
    Route::put('/edit', 'user.AttendanceRecord/edit');  // 编辑考勤记录
    Route::delete('/del', 'user.AttendanceRecord/del'); // 删除考勤记录
    Route::get('/statistics', 'user.AttendanceRecord/statistics'); // 考勤记录统计
});

// 角色组相关路由
Route::group('api/user/group', function () {
    Route::get('/list', 'user.Group/index');            // 查看角色组列表
    Route::get('/view', 'user.Group/read');             // 查看单个角色组
    Route::get('/active-list', 'user.Group/activeList'); // 获取启用的角色组列表（用于下拉选择）
    Route::post('/add', 'user.Group/save');             // 新建角色组
    Route::put('/edit', 'user.Group/update');           // 编辑角色组
    Route::put('/update', 'user.Group/update');         // 编辑角色组（别名）
    Route::delete('/del', 'user.Group/delete');         // 删除角色组
    Route::post('/batch-status', 'user.Group/batchStatus'); // 批量更新角色组状态
});

// 人事管理模块路由规范化完成标记
// ROUTE_STANDARDIZATION_DONE: user.php - 所有路由已统一添加/api前缀，结构优化完成